package com.coderman.infosys.auth.domain.cachekey;

/**
 * Description:缓存key前缀
 * date: 2022/1/9
 *
 * @author shenshuai
 * @version 1.0.0
 * @since JDK 1.8
 */
public class UserCacheKeyConstant {

    /**
     * 单个用户有哪些角色
     * set 类型
     */
    private static final String _USER_ROLE_LIST = ":USER:ROLE:";

    /**
     * 单个用户有哪些角色组
     * set类型
     */
    private static final String _USER_ROLE_GROUP_LIST = ":USER:ROLEGROUP:";

    /**
     * 单个用户有哪些用户组
     * set类型
     */
    private static final String _USER_USER_GROUP_LIST = ":USER:USERGROUP:";

    /**
     * 单个用户有哪些权限code
     * set类型
     */
    private static final String _USER_AUTH_CODE = ":USER:AUTH:";

    /**
     * 根据租户标示获取缓存信息
     * @param tenant
     * @param userId
     * @return
     */
    public static String getUserRoleList(String tenant, Long userId){
        return tenant + _USER_ROLE_LIST + userId ;
    }

    /**
     * 根据租户标示获取缓存信息
     * @param tenant
     * @return
     */
    public static String getUserRoleGroupList(String tenant, Long userId){
        return tenant + _USER_ROLE_GROUP_LIST + userId;
    }


    /**
     * 根据租户标示获取缓存信息
     * @param tenant
     * @return
     */
    public static String getUserUserGroupList(String tenant,Long userId){
        return tenant + _USER_USER_GROUP_LIST + userId;
    }


    /**
     * 根据租户标示获取缓存信息
     * @param tenant
     * @return
     */
    public static String getUserAuthCode(String tenant, Long userId){
        return tenant + _USER_AUTH_CODE + userId;
    }
}
